from time import sleep

from appium import webdriver
from appium.webdriver.common.appiumby import AppiumBy

jw_capabilities = {
    'platformName': 'Android',
    'platformVersion': '9',
    'deviceName':'127.0.0.1:10027',
    'app':'/home/appium/apps/kaoyan3.1.0.apk',
    'appPackage':'com.tal.kaoyan',
    'appActivity':'com.tal.kaoyan.ui.activity.SplashActivity',
    'noReset':False
}

jw_capabilities['unicodekeyboard'] = True
jw_capabilities['resetkeyboard'] = True
jwdriver = webdriver.Remote("http://localhost:4723/wd/hub",jw_capabilities)

try:
    cancelBtn = jwdriver.find_element(AppiumBy.ID,'android:id/button2')
except:
    print('没有找到取消按钮')
else:
    print('找到取消按钮')
    cancelBtn.click()
sleep(2)
# 跳过 com.tal.kaoyan:id/tv_skip
try:
    skipBtn = jwdriver.find_element(AppiumBy.ID,'com.tal.kaoyan:id/tv_skip')
    # jwdriver.find_element_by_android_uiautomator('resourceId("com.tal.kaoyan:id/tv_skip")')
except:
    print('没有找到跳过按钮')
else:
    print('找到跳过按钮')
    skipBtn.click()
sleep(2)

# 注册
jwdriver.find_element(AppiumBy.XPATH,'//*[@text="注册"]').click()

# 添加头像
# 需求 id 定位 速度慢
# 兄弟定位 父子定位 uiautomator_android
#                           父元素                                       子元素
# son = 'resourceId("com.tal.kaoyan:id/activity_register_parentlayout").childSeletor(className("android.widget.ImageView"))'
# jwdriver.find_element(AppiumBy.ANDROID_UIAUTOMATOR,son)

# 兄弟定位                                                                       找父母
brother = 'resourceId("com.tal.kaoyan:id/activity_register_username_edittext").fromParent(className("android.widget.ImageView"))'
jwdriver.find_element(AppiumBy.ANDROID_UIAUTOMATOR,brother).click()
sleep(3)
jieguo  = jwdriver.find_elements(AppiumBy.ID,'com.tal.kaoyan:id/item_image') # 列表定位
# print(jieguo)
# print(len(jieguo))
# print(type(jieguo)) # list
jieguo[3].click() # 点击第三张图片